home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 1 / Cream of the Crop 1.iso / WINDOWS / MDIT.ARJ / MDIT.H < prev    next >
C/C++ Source or Header  |  1992-03-31  |  4KB  |  122 lines

  1. /****************************************************************************
  2. Module name: MDIT.H
  3. Programmer : Jeffrey M. Richter & Elvira Peretsman.
  4. Modified   : V.M. Vanderburg - For PCThreads demo.
  5. *****************************************************************************/
  6. #include "dialog.h"
  7. #include "pcthread.h"
  8.  
  9. extern char   g_szAppName[];   
  10. extern HANDLE g_hInstance;     
  11. extern HANDLE g_hAccelTable;   
  12. extern HWND   g_hWndMDITClient; 
  13.  
  14. BOOL FAR PASCAL RegisterFrameWndClass (void);
  15. BOOL FAR PASCAL RegisterThreadWndClass (void);
  16.  
  17. #define GETFRAME(hWnd)  ((HWND) (GetParent(GetParent(hWnd))))
  18.  
  19. typedef struct th_list 
  20. {
  21.     struct th_list *next_p;
  22.     pcthread_t     th;
  23.  
  24. } th_list_t, *th_list_p_t;
  25.  
  26.  
  27. #define FW_MDITCHILDDESTROY   (WM_USER + 0)
  28. #define FW_RESIZEMDITCLIENT    (WM_USER + 1)
  29. #define FW_GETSTATBARRECT     (WM_USER + 2)
  30. #define FW_SETMENUHELP        (WM_USER + 3)
  31. #define FW_GETMENUHELP        (WM_USER + 4)
  32. #define FW_DRAWSTATUSDIVIDE   (WM_USER + 5)
  33.  
  34.  
  35. #define AW_PAINTMENUHELP      (WM_USER + 100)
  36.  
  37.  
  38. #define AC_PAINTSTATBAR       (WM_USER + 200)
  39.  
  40.  
  41. #define IDM_FILEOPENTHREAD          101
  42. #define IDM_EXIT                    102
  43.  
  44.  
  45. #define IDM_OPTIONSSTATUS           140
  46.  
  47.  
  48. #define IDM_HELPINDEX               150
  49. #define IDM_HELPKEYBOARD            151
  50. #define IDM_HELPCOMMANDS            152
  51. #define IDM_HELPPROCEDURES          153
  52. #define IDM_HELPUSINGHELP           154
  53. #define IDM_ABOUT                   155
  54.  
  55.  
  56. #define IDM_WINDOWTILEVERT          160
  57. #define IDM_WINDOWTILEHORIZ         161
  58. #define IDM_WINDOWCASCADE           162
  59. #define IDM_WINDOWARRANGEICONS      163
  60. #define IDM_WINDOWCHILD             164
  61.  
  62.  
  63. //*********************** String Table Constants *****************************
  64.  
  65.  
  66.  
  67. #define IDS_FRAMEPOPUPID   1000
  68. #define IDS_FRAMEMENUID    2000
  69.  
  70.  
  71. #define IDS_THREADPOPUPID  3000
  72. #define IDS_THREADMENUID   4000
  73.  
  74.  
  75. #define IDS_FRAMESTATUSBAR  7000
  76. #define IDS_THREADSTATUSBAR 7001
  77.  
  78.  
  79.  
  80. #define IDM_SYSMENUSIZE          0x00  // ((SC_SIZE & 0x0FFF)       >> 4)
  81. #define IDM_SYSMENUMOVE          0x01  // ((SC_MOVE & 0x0FFF)       >> 4)
  82. #define IDM_SYSMENUMINIMIZE      0x02  // ((SC_MINIMIZE & 0x0FFF)   >> 4)
  83. #define IDM_SYSMENUMAXIMIZE      0x03  // ((SC_MAXIMIZE & 0x0FFF)   >> 4)
  84. #define IDM_SYSMENUNEXTWINDOW    0x04  // ((SC_NEXTWINDOW & 0x0FFF) >> 4)
  85. #define IDM_SYSMENUCLOSE         0x06  // ((SC_CLOSE & 0x0FFF)      >> 4)
  86. #define IDM_SYSMENURESTORE       0x12  // ((SC_RESTORE & 0x0FFF)    >> 4)
  87. #define IDM_SYSMENUTASKLIST      0x13  // ((SC_TASKLIST & 0x0FFF)   >> 4)
  88.  
  89.  
  90. void FAR PASCAL ChangeMDITMenu (HWND hWndFrame, HWND hWndClient,
  91.          HMENU hTopLevelMenu, WORD wMenuID);
  92.  
  93. HWND FAR PASCAL CreateMDITChild (LPSTR szClassName, LPSTR szWindowName,
  94.          DWORD dwStyle, short x, short y, short nWidth, short nHeight,
  95.          HWND hWndMDITClient, HANDLE hInstance, LONG lParam);
  96.  
  97.  
  98. //*********** Macros for use by Window and Class Extra Bytes *****************
  99.  
  100. #define offsetof(Struct, Member) \
  101.    ((unsigned int) &(((Struct NEAR *) 0)->Member))
  102.  
  103. #define GETWNDEB(hWnd, Struct, Member) \
  104.    ((sizeof(((Struct FAR *)0)->Member) == sizeof(DWORD)) ? \
  105.       GetWindowLong(hWnd, offsetof(Struct, Member)) : \
  106.       GetWindowWord(hWnd, offsetof(Struct, Member)))
  107.  
  108. #define SETWNDEB(hWnd, Struct, Member, Value) \
  109.    ((sizeof(((Struct FAR *)0)->Member) == sizeof(DWORD)) ? \
  110.       SetWindowLong(hWnd, offsetof(Struct, Member), Value) : \
  111.       SetWindowWord(hWnd, offsetof(Struct, Member), (WORD) Value))
  112.  
  113. #define GETCLSEB(hWnd, Struct, Member) \
  114.    ((sizeof(((Struct FAR *)0)->Member) == sizeof(DWORD)) ? \
  115.       GetClassLong(hWnd, offsetof(Struct, Member)) : \
  116.       GetClassWord(hWnd, offsetof(Struct, Member)))
  117.  
  118. #define SETCLSEB(hWnd, Struct, Member, Value) \
  119.    ((sizeof(((Struct FAR *)0)->Member) == sizeof(DWORD)) ? \
  120.       SetClassLong(hWnd, offsetof(Struct, Member), Value) : \
  121.       SetClassWord(hWnd, offsetof(Struct, Member), (WORD) Value))
  122.